package com.ruoyi.monitor.service;

import java.util.Date;
import java.util.List;
import java.util.Map;

import com.ruoyi.monitor.domain.BusWaterAutomonitorDaydata;
import com.ruoyi.monitor.domain.GetWaterAutomonitorParam;

/**
 * 水监测日数据Service接口
 * 
 * @author ruoyi
 * @date 2025-08-16
 */
public interface IBusWaterAutomonitorDaydataService 
{
    /**
     * 查询水监测日数据
     * 
     * @param mn 水监测日数据主键
     * @return 水监测日数据
     */
    public BusWaterAutomonitorDaydata selectBusWaterAutomonitorDaydataByMn(String mn);

    /**
     * 查询水监测日数据列表
     * 
     * @param busWaterAutomonitorDaydata 水监测日数据
     * @return 水监测日数据集合
     */
    public List<BusWaterAutomonitorDaydata> selectBusWaterAutomonitorDaydataList(BusWaterAutomonitorDaydata busWaterAutomonitorDaydata);

    /**
     * 新增水监测日数据
     * 
     * @param busWaterAutomonitorDaydata 水监测日数据
     * @return 结果
     */
    public int insertBusWaterAutomonitorDaydata(BusWaterAutomonitorDaydata busWaterAutomonitorDaydata);

    /**
     * 修改水监测日数据
     * 
     * @param busWaterAutomonitorDaydata 水监测日数据
     * @return 结果
     */
    public int updateBusWaterAutomonitorDaydata(BusWaterAutomonitorDaydata busWaterAutomonitorDaydata);

    /**
     * 批量删除水监测日数据
     * 
     * @param mns 需要删除的水监测日数据主键集合
     * @return 结果
     */
    public int deleteBusWaterAutomonitorDaydataByMns(String[] mns);

    /**
     * 删除水监测日数据信息
     * 
     * @param mn 水监测日数据主键
     * @return 结果
     */
    public int deleteBusWaterAutomonitorDaydataByMn(String mn);

    List<BusWaterAutomonitorDaydata> selectBusWaterAutomonitorDaydataItemList(GetWaterAutomonitorParam getWaterAutomonitorParam);

    public Map statisCalendarDetail(String id, String day);

    public Map weeklyReport(String id, Date startTime, Date endTime);

    public Map yearReport(String id, Date startTime, Date endTime);

    public Map autoQualityCalendar(String year,String segmentId,String itemCode,String isOverStandard);

    List<Map<String,Object>> getWaterAutoMonitorDayList(Map<String, Object> params);
}
